package com.woniu108.car.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.woniu108.car.param.DeleteCarSeriesParam;
import com.woniu108.car.model.CarSeries;
import com.woniu108.car.param.BanCarSeriesParam;
import com.woniu108.car.param.InsertCarSeriesParam;
import com.woniu108.car.param.UnlockCarSeriesParam;
import com.woniu108.car.param.UpdateCarSeriesNameParam;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author yanxi
 * @since 2024-05-23
 */
public interface CarSeriesService extends IService<CarSeries> {
    /**
     * 查询某品牌汽车所有未删除系列
     * @param brandId 品牌id
     * @return CarSeries集合
     */
    List<CarSeries> findAllSeriesByBrandId(Integer brandId);
    /**
     * 查询某品牌汽车所有未删除系列
     * @param brandId 品牌id
     * @return CarSeries集合
     */
    List<CarSeries> findAllNormalSeriesByBrandId(Integer brandId);

    /**
     * 新增品牌系列
     * @param param 品牌id,系列名称，管理员id
     * @return boolean值
     */
    Boolean insertCarSeries(InsertCarSeriesParam param);
    /**
     * 删除汽车某品牌系列
     * @param param 系列id,管理员id
     * @return boolean值
     */
    Boolean deleteCarSeries(DeleteCarSeriesParam param);
    /**
     * 禁用汽车某品牌系列
     * @param param 系列id,管理员id
     * @return boolean值
     */
    Boolean banCarSeries(BanCarSeriesParam param);
    /**
     * 解锁汽车某品牌系列
     * @param param 系列id,管理员id
     * @return boolean值
     */
    Boolean unlockCarSeries(UnlockCarSeriesParam param);
    /**
     *
     * 修改汽车某品牌系列名称
     * @param param 系列id,管理员id,新名称
     * @return boolean值
     */
    Boolean updateCarSeriesName(UpdateCarSeriesNameParam param);
}